package com.cowealth.platform.common.web.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 请求参数过滤注解
 * @author      : skycdm
 * @date        : 2020/6/30 14:54
 * @version     : 1.0.0
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ParamFilter {

    /**
     * 不能为空的参数名数组
     */
    String[] notNull();

    /**
     * 请求体所在的方法参数下标
     */
    int bodyArgIdx() default 0;

    /**
     * 请求体是否必须
     */
    boolean body() default false;

    /**
     * 请求头是否必须
     */
    boolean header() default false;
}
